/**
 * 最长连续序列
 * 给定一个未排序的整数数组，找出最长连续序列的长度。
 * 思路：
    * 1. 先排序
    * 2. 遍历数组，找出连续的最长序列
    * 3. 时间复杂度O(nlogn)
 */

var longestConsecutive = function(nums) {
    if(nums.length === 0) return 0;
    nums.sort((a, b) => a - b);
    let max = 1, count = 1;
    for(let i = 1; i < nums.length; i++) {
        if(nums[i] - nums[i - 1] === 1) {
            count++;
        } else if(nums[i] !== nums[i - 1]) {
            max = Math.max(max, count);
            count = 1;
        }
    }
    return Math.max(max, count);
};